Modular Specification of Interaction Policiesin
نویسندگان
چکیده
Software executing on distributed systems consists of many asynchronous, autonomous components which interact in order to coordinate local activity. The need for such coordination, as well as requirements such as heterogeneity, scalability, security and availability, considerably increase the complexity of code in distributed applications. Moreover, changing requirements, as well as changes in hardware platforms, lead to software that is constantly evolving and complicates reuse. To support development and evolution of distributed applications requires techniques which allow coordination code to be speci ed, customized, and maintained independently of application components; goals which cannot be realized solely through object-oriented techniques. This thesis demonstrates that meta-level speci cation of interaction policies enables modular description of component interaction policies, as well as customization of policy implementations. We present the high-level language Dil for speci cation of protocols. The language identi es the abstractions and concepts required for modular speci cation of interaction policies. The abstractions developed in Dil are then realized through a meta-level architecture. We provide several Dil protocols implementing policies for reliable communication, atomicity, and dependability in a multi-media application. The implementation techniques necessary to realize the meta-architecture are discussed in the context of Broadway, a run-time system for distributed C++ objects. This meta-architecture provides access to the system-level features necessary to support the modularity mechanisms de ned in Dil. We provided examples of protocol translation from Dil to Broadway C++ classes that utilize the meta-architecture. Measurements show that these techniques may be implemented with minimal performance overhead. A formal semantics for reasoning about the approach is also developed. iii To my parents, Joel and Diane iv Acknowledgements I wish thank my parents, Joel and Diane, whose continual love and encouragement have been an essential ingredient in the development of this thesis. Their continuous queries as to whether or not \my thesis was done yet" and, in general, their never-ending interest in my work and accomplishments, has always kept me oriented and on track. I thank my brother and oldest friend, Michael, who I will not ask to read this thesis, hoping he returns the favor. I would also like to thank Lily Chu, who has been my best friend, psychotherapist, navigator, fellow gardener and chef, providing love and support, not to mention delicious deserts, when I need them most. My doctoral committee | Gul Agha, Roy Campbell, and Prithviraj Banerjee | have been invaluable through their advice and comments. I would especially like to thank my advisor, Gul Agha, for his mentorship and support, for always treating me as a peer, and for providing an open and exible research environment. I would also like to thank Carolyn Talcott for her feed-back and comments and, in particular, for her advice in the development of my operational semantics. I have bene ted greatly from countless discussions with members of the Open Systems Lab. In particular I would like to thank Svend Fr lund, Rajendra Panwar, Mark Astley, Brian Nielsen, Shangping Ren, and WooYoung Kim for their input and contributions. In addition, I would like to thank Theron Tock, Amitabh Dave, and Nayeem Islam1 for always providing a fresh outlook outside that of the OSL. Finally, I would like to thank the members of the Illini Ju-Juitsu Club who have provided an essential outlet for all my stress and frustration throughout my tenure in Champaign-Urbana. I am particularly thankful to Doug Musser and Greg Schomburg for their personal instruction and for serving as examples through their dedication. 1Nayeem Islam chose the name Broadway for my run-time Actor system. v Table of
منابع مشابه
QTRU: quaternionic version of the NTRU public-key cryptosystems
In this paper we will construct a lattice-based public-key cryptosystem using non-commutative quaternion algebra, and since its lattice does not fully fit within Circular and Convolutional Modular Lattice (CCML), we prove it is arguably more secure than the existing lattice-based cryptosystems such as NTRU. As in NTRU, the proposed public-key cryptosystem relies for its inherent securi...
متن کاملThe effect of earthquake frequency content and soil structure interaction on the seismic behavior of concrete gravity dam-foundation-reservoir system
The effect of frequency content on the dynamic response of concrete gravity dams is investigated in this paper. Dams are one of the most complex structures to handle when there is dynamic analysis involved. One of the influential parameters on these structureschr('39') seismic response is the frequency content of the earthquakes. An index to represent frequency content, which represents frequen...
متن کاملConstraint-oriented formal modelling of OO-systems
In addition to static structures, the Unified Modelling Language UML supports the specification of dynamic properties by means of state charts and interaction diagrams. Each diagram, however, only reflects partial aspects of the system. A common behavior model is lacking while it is necessary to relate the diagrams with each other and to enable the verification of dynamic system properties. The...
متن کاملXcd - Modular, Realizable Software Architectures
Connector-Centric Design (XCD) is centred around a new formal architectural description language, focusing mainly on complex connectors. Inspired by Wright and BIP, XCD aims to cleanly separate in a modular manner the high-level functional, interaction, and control system behaviours. This can aid in both increasing the understandability of architectural specifications and the reusability of com...
متن کاملTranslucid Contracts for Aspect-oriented Interfaces
There is some consensus in the aspect-oriented community that a notion of interface between joinpoints and advice may be necessary for improved modularity of aspect-oriented programs, for modular reasoning, and for overcoming pointcut fragility. Different approaches for adding such interfaces, such as aspect-aware interfaces, pointcut interfaces, crosscutting interfaces, explicit joinpoints, qu...
متن کاملAn Algebraic Approach for the Specification and the Verification of Aspect- Oriented Systems
Aspect-Oriented (AO) Technology is a post-object-oriented technology used to overcome limitations of Object-Oriented (OO) Technology, such as the cross-cutting concern problem. Aspect-Oriented Programming (AOP) also offers modularity and traceability benefits. Yet, reasoning, specification, and verification of AO systems present unique challenges, especially as such systems evolve over time. Co...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1996